home *** CD-ROM | disk | FTP | other *** search
/ Aminet 41 / Aminet 41 (2001)(Schatztruhe)[!][Feb 2001].iso / Aminet / comm / irc / UnrealIRCd-bin.lha / Unreal / ircd.conf < prev    next >
Text File  |  2000-11-24  |  22KB  |  523 lines

  1. #
  2. # IRC - Internet Relay Chat, doc/example.conf
  3. # Copyright (C) 1994, Helen Rose
  4. # $Id: example.conf,v 1.1.1.1.6.1.2.1 2000/11/24 18:07:30 codemastr Exp $
  5. #
  6. #   This program is free software; you can redistribute it and/or modify
  7. #   it under the terms of the GNU General Public License as published by
  8. #   the Free Software Foundation; either version 1, or (at your option)
  9. #   any later version.
  10. #
  11. #   This program is distributed in the hope that it will be useful,
  12. #   but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. #   GNU General Public License for more details.
  15. #
  16. #   You should have received a copy of the GNU General Public License
  17. #   along with this program; if not, write to the Free Software
  18. #   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  19. #
  20. # This is an example configuration file for the Unreal3.0-Morrican
  21. # and higher IRC servers.
  22. # You only need an ircd.conf (IRC server configuration file) if you are
  23. # running an IRC server. If you are running a standalone client this file
  24. # is not necessary.
  25. #
  26. # This file will explain the various lines in the IRC server
  27. # configuration file. Not all lines are mandatory. You can check to make
  28. # sure that your configuration file is correct by using the program
  29. # "chkconf", provided in the server distribution (and when you do "make
  30. # install" this program will be installed in the same directory as the irc
  31. # server). 
  32. #
  33. # This document modified for use by with the Unreal3.0 IRCD
  34. #
  35. #
  36. # The options for whether a line is needed or not are: 
  37. # MANDATORY: you absolutely MUST have this line
  38. # NETWORKED: you must have this line if you are connecting this irc
  39. #            server to any other server (servers can run standalone).
  40. # SUGGESTED: it is highly suggested that you use this line
  41. # OPTIONAL: it's completely up to you whether to define this or not
  42. # DISCOURAGED: you really really should not use this line if at all
  43. #              possible. 
  44. # OBSOLETE: an old or out of date line that isn't needed.
  45. #
  46. # MANDATORY lines are absolute *musts*, that is, if you do not have this
  47. # line then your server will not work properly. SUGGESTED lines are
  48. # close-to-mandatory (that is, the server will run without it, but you are
  49. # highly encouraged to use these lines).
  50. #
  51. # Note that "*" in a field indicates an "unused" field.
  52. #
  53. #
  54. # ========================================================================
  55. # NOTE! this entire configuration file is read UPSIDE-DOWN! So if you have
  56. # to put something in a specific order (for example, client-connection
  57. # lines), put them in reverse order!
  58. # ========================================================================
  59. #
  60. #
  61. # M: [MANDATORY]. This line sets your server's name, description, port
  62. # number, and IP address to bind to. Fields, in order, are: 
  63. #
  64. # If you leave IP address field blank or
  65. # *, it defaults to binding all local IP addresses on the machine.
  66. #
  67. # M:hostname:IP:Description Of Your Server:port:NS
  68. #
  69. # NS is a new feature in Unreal3.1. It is optional but it is recommended.
  70. # Every server on the network must have a completely unique NS. This number
  71. # will be used to identify the server.
  72. #
  73. M:server.my.net:*:My IRC Server:6667:34
  74. #
  75. # A: [MANDATORY]. This line lists your administrative information
  76. # (contact address, etc). To view this information, /admin (server) will
  77. # show it to you.
  78. #
  79. # The A: line has no set information, in fact, you can put arbitrary text
  80. # in there if you wish (it is encouraged that you put at *least* a contact
  81. # address for a person responsible for the irc server, however)
  82. #
  83. A:Generic Internet Access:Admin John Doe:jdoe@generic.com
  84. #
  85. # Y: [SUGGESTED]. These lines define connection classes. Connection
  86. # classes allow you to fine-tune your client and server connections. It is
  87. # suggested that clients and servers be placed in seperate classes, and if
  88. # you have lots of server connections (if you do have lots of servers you
  89. # shouldn't be reading this file :-) each set of servers (defined
  90. # arbitrarily by you) should have its own class. If you have clients
  91. # coming in from lots of different sites, you may want to seperate them
  92. # out into classes. For instance, you may want to put local users in one
  93. # class, with remote users in another class.
  94. #
  95. # The class numbers are not arbitrary. In auto-connecting servers -- that
  96. # is, servers that you have a port number (e.g. 6667) on the end of the C:
  97. # line (see below) the higher the number the higher the priority in
  98. # auto-connecting.
  99. #
  100. # The fields in order are: class number, ping frequency (in seconds),
  101. # connect frequency (in seconds), maximum number of links (used for
  102. # auto-connecting, and for limiting the number of clients in that class),
  103. # and sendq (this overrides any value set in include/config.h for #define
  104. # MAXSENDQLENGTH).
  105. #
  106. # Note that it is a good idea to have ping frequency the same at both ends
  107. # of the link.
  108. # in this case, connect-frequency is 0 indicating that this is a client
  109. # class (servers never connect to clients, it is the other way around).
  110. Y:1:90:0:20:100000
  111. #
  112. # These are the recommended server Y:lines for connecting to dalnet.
  113. # In addition to these you should have at *least* one client class, and one
  114. # oper class (see O:lines).  By convention on dalnet, these are usually
  115. # numbered from 5 to 10.
  116. #
  117. # Class 50 - Hub to hub, autoconnect
  118. Y:50:90:60:1:4000000
  119. #
  120. # Class 51 - Hub to hub, no autoconnect
  121. Y:51:90:60:0:4000000
  122. #
  123. # Class 30 - Hub to US leaf
  124. Y:30:90:0:0:3500000 
  125. #
  126. # Class 32 - Hub to EU leaf
  127. Y:32:180:0:0:3500000
  128. #
  129. # Class 34 - Hub to AU leaf
  130. Y:34:300:0:0:3500000
  131. #
  132. # Class 40 - US leaf to hub, autoconnect
  133. Y:40:90:90:1:3500000
  134. #
  135. # Class 41 - US leaf to hub, no autoconnect
  136. Y:41:90:90:0:3500000
  137. #
  138. # Class 42 - EU leaf hub
  139. Y:42:180:90:1:3500000
  140. #
  141. # Class 44 - AU leaf to hub
  142. Y:44:300:120:1:3500000
  143. #
  144. # I: [MANDATORY]. The I: lines are client-authorization lines. Without
  145. # these lines, no clients will be able to connect to your server.
  146. # Wildcards ("*") are permitted. Passwords are also permitted (clients can
  147. # be configured to send passwords).
  148. # Ident (for more information on this, see rfc1413) can also be used by
  149. # placing a @ in the appropriate fields.
  150. #
  151. # Fields are as follows:
  152. # I:IP-address-mask:optional password:domain-mask::connection class (opt)
  153. #
  154. # With a password..... This will allow anyone from anywhere to connect
  155. # as long as they know the password ("foobar"). Note listing this I: line
  156. # first, it will be read *last*, meaning it is the "fall-through". That
  157. # is, anyone who doesn't match the I: lines listed below must know the
  158. # password ("foobar") to connect.
  159. #
  160. I:*@*:foobar:*@*::1
  161. # This is a standard vanilla I: line which will permit anyone with an IP
  162. # address starting with 205.133 OR with a hostname ending in 
  163. # .toledolink.com to connect to the server. NOTE, the ircd matches on the 
  164. # *right-most* match, so if I connect as rmiller@glass.toledolink.com 
  165. # (which is rmiller@205.133.127.8) I will show up on irc as 
  166. # rmiller@glass.toledolink.com since that is the first match it found. 
  167. # (Even though the second match is valid). 
  168. I:205.133.*::*.toledolink.com::1
  169. # using ident
  170. I:*@205.133.*::*@*.toledolink.com::1
  171. # and you can even specify just certain usernames running ident (as long
  172. # as the client's site is running the ident daemon):
  173. I:NOMATCH::rmiller@glass.toledolink.com::1
  174. # putting NOMATCH in the first field will stop the ircd from matching
  175. # automatically against the IP address and it will force the server to
  176. # match against the hostname. (the "NOMATCH" string is not mandatory, you
  177. # can use any arbitrary text in the first field).
  178. I:*@*:ONE:*@*::1
  179. # putting the ONE in the password field makes it so that only 1 user matching
  180. # that host or IP can connect through that I:line.
  181. #
  182. # O: [OPTIONAL]. These lines define operator access. You do not need to
  183. # have an operator to run a server. A well configured leaf site should not
  184. # need an operator online, if it's connections are well defined, the irc
  185. # administrator can use kill -HUP on the ircd to reload the configuration
  186. # file. 
  187. # The fields are as follows:
  188. # O:hostname (ident "@" permitted):password:NickName:AccessFlags:class
  189. # if the person in "NickName" is not coming from the hostname defined in
  190. # the first field then the person will get the error message "No O: lines
  191. # for your host". 
  192. # NOTE that since Crypted Passwords are defined by default in
  193. # include/config.h this text probably will not be plaintext. See
  194. # ircd/crypt/README for more information.
  195. #
  196. # class is the Y:Line class you want this operator to end up in after they
  197. # have successfully /oper'd.
  198. #
  199. # Access flags may be left blank, or * to give full access rights. Flags
  200. # are in the form of single characters making a string.  Any combination
  201. # of the following can be used(these are cAsE sensitive characters):
  202. #
  203. # r = access to /rehash server
  204. # R = access to /restart server
  205. # D = access to /die server
  206. # h = oper can send /help ops
  207. # g = oper can send /globops
  208. # w = oper can send /wallops
  209. # l = oper can send /locops
  210. # c = access to do local /squits and /connects
  211. # L = access to do remote /squits and /connects
  212. # k = access to do local /kills
  213. # K = access to do global /kills
  214. # b = oper can /kline users from server
  215. # B = oper can /unkline users from server
  216. # n = oper can send local server notices(/notice $servername message)
  217. # G = oper can send global server notices(/notce $*.my.net message)
  218. # A = admin
  219. # u = oper can set /umode +c
  220. # f = oper can set /umode +f
  221. # ^ = oper can set /umode +I
  222. # e = oper can set /umode +e
  223. # W = oper can set /umode +W
  224. # H = oper gets auto +x on /oper
  225. # o = local oper, flags included: rhgwlckbBnuf
  226. # O = global oper, flags included: oRDCK
  227. # a = services admin, access to /samode
  228. # C = co admin
  229. # T = tech admin
  230. # A = admin
  231. # N = network admin access to remote /rehash and remote /restart and a bunch more
  232. # * = flags included: AaNCTzSHW^
  233.  
  234. #
  235. # This is a plain vanilla O:line:
  236. O:*.toledolink.com:nopassword:Russell:*:10
  237. #
  238. # and this line forces ident:
  239. O:rmiller@glass.toledolink.com:nopassword:Russell::10
  240. # This line is a generic "local operator", because of the flags, the only
  241. # thing that really makes them global operators, is if they have the flags
  242. # CKN set in their access flags.
  243. #
  244. # this line permits the nickname "jhs" with the password of "ITBites" to
  245. # be a local operator only (be able to issue commands locally -- can /kill
  246. # and /squit and /connect -- but *only* locally)
  247. #
  248. O:*.something.net:ITBites:jhs:o:10
  249. #
  250. # a crypted password line (NOTE that if you have crypted passwords, *all*
  251. # of you passwords must be crypted! In fact, if you are getting an error
  252. # "Incorrect Password" it may well be because crypted passwords are
  253. # defined and you have used plaintext.  So my example of plaintext and
  254. # crypted strings in the same IRC server configuration file is an
  255. # impossibility (but it is just theoretical, which is why I explained both).
  256. #
  257. O:rmiller@*.toledolink.com:T0eiVgHrqeKTQ:Russell::10
  258. #
  259. # U: [OPTIONAL]. This line defines the servers that IRC recognizes as being
  260. # allowed to make various changes to the IRC environment (mode changes, for
  261. # example), without complaining or otherwise obstructing them. For example,
  262. # DALnet requires the following line:
  263. U:services.my.net:*:*
  264. #
  265. # X: [ENCOURAGED]. This line defines the password that an operator must use
  266. # to restart or die the server. Note that they still myst have they R and D
  267. # flags. This is just a security precaution against  accidentaly typing
  268. # /die or /restart
  269. # X:<password for /DIE>:<password for /RESTART>
  270. X:diepass:restartpass
  271.  
  272. # C: [NETWORKED]. These lines define what servers your server tries to
  273. # connect to. 
  274. # N: [NETWORKED]. These lines define what servers your server permits
  275. # connections to be initiated from. 
  276. # C/N lines MUST be used in pairs. You cannot have one without the other. 
  277. #
  278. # C: lines contain the following fields:
  279. # C:remote server's hostname:passwd:remote server's name:port:conn class:options
  280. # N: lines contain the following fields:
  281. # N:remote server's hostname:passwd:remote server's name:host mask:conn class
  282. #
  283. # "host mask" is the number of parts in *your* hostname to mask to. For
  284. # instance, with my servername being "csa.bu.edu", if I wanted to present
  285. # my servername to be "*.bu.edu" I would have a host-mask portion of "1". 
  286. #
  287. # it is *strongly* advised that your C/N line passwords be different for
  288. # security's sake.
  289. #
  290. # ident is allowed in the server's hostname part of the field.
  291. # The options field in a C:line is only available as of Unreal3.1.1
  292. # Currently the only option is S which declares the link an SSL link.
  293. # If the other server is not compiled with SSL then the link will fail.
  294. #
  295. # these lines tell the server to automatically (note the port number, that
  296. # means automatic connection) connect to server2.my.net:
  297. C:foobar@server2.my.net:bigspark:server2.my.net:7000:32
  298. N:foobar@server2.my.net:bigalpha:server2.my.net::32
  299. #
  300. # This server's connection lines are more vanilla, masking the host to
  301. # *.toledolink.com (as described above):
  302. C:*.my.net:camelsrk00l:*.my.net::32
  303. N:*.my.net:andsoarellamas:*.my.net:1:32
  304. #
  305. # This this line makes use of the options field:
  306. # C:*.my.net:linkme:*.my.net:6667:32:S
  307. # N:*.my.net:linkme:*.my.net::32
  308. #
  309. # K: [OPTIONAL]. These lines define user@host patterns to be banned from
  310. # this particular server (with an optional time field). Note that K: lines
  311. # are *not* global, and if you ban a user they can still use any other IRC
  312. # server (unless they have specifically been banned there as well).
  313. #
  314. # The time field (same as reason) is only used if you #define
  315. # TIMED_KLINES in config.h, and even then they are discouraged.
  316. # the fields are defined as:
  317. # K:hostmask:reason:username
  318. # wildcards are permitted in any one of the fields, in other words, you can
  319. # K:*::* if you wanted (but your server wouldn't be used much ;-)
  320. #
  321. # Spaces are permitted in the reason field (you don't have to use _).
  322. # The /stats command has been modified to replace all spaces with _'s when
  323. # doing a /stats k. K:lines also allows you to specify a file to play to the
  324. # user when they are K:lined. To use this feature the reason must be in the
  325. # format of |filename. the filename must be kc.anythinghere, this is to prevent
  326. # the sending of text files such as your ircd.conf.
  327. #
  328. # This K: line bans the username "hrose" (the wildcards are used to make
  329. # sure that any ident-checking character will match) on any machine from
  330. # the University of Boston.
  331. K:*.bu.edu:Hacking #UnrealIRCD:*hrose*
  332. #
  333. # This K: line bans any users from acs*.bu.edu between the hours of 8am
  334. # and 12pm and 1pm and 5pm (the time is always the server's local time).
  335. # Time-based K-lines such as this require TIMED_KLINES in config.h to be
  336. # #defined.
  337. K:acs*.bu.edu:0800-1200,1300-1700:*
  338. # Note that 24 hour time is used (no "AM" or "PM").
  339. # This K: line bans all *.foobar.com users and will play the file |kc.flooding
  340. # to the user as the reason.
  341. K:*.foobar.com:|kc.flooding:*
  342. # E: [OPTIONAL]. This allows kline exceptions, even if a person matches
  343. # a K:line or /kline they are still allowed to connect.
  344. #
  345. # The fields are as follows
  346. # E:hostmask:reason:usermask
  347. E:foo.bar.com:Oper on this server:*john21*
  348. #
  349. #
  350. # q: [DISCOURAGED]. These lines "quarantine" specified servers.  Because
  351. # of the way they operates, the same q: lines MUST be installed by
  352. # everyone or the net will keep breaking. I CANNOT EMPHASIZE THIS ENOUGH.
  353. # Do NOT use q: lines lightly!
  354. #
  355. # This is NOT a nick q-line, if you wish to quarantine a NICK, see below.
  356. #
  357. # The fields are as follows:
  358. # q:*:reason why quarantine is in place:servername
  359. #
  360. q::this server is too slow and lags the net:cm5.eng.umd.edu
  361. #
  362. # Q: [OPTIONAL]. Different from the above type of q: line, these lines
  363. # prevent users on your server from picking certain nicks. This is useful
  364. # if your network has 'reserved' nicknames that should not be taken by
  365. # normal users.  Note the difference in capitalization and BE CAREFUL!
  366. #
  367. # The fields are as follows:
  368. # Q:*:reason why quarantine is in place:nickname
  369. #
  370. # For example, You might want to use the following lines:
  371. Q::Reserved for services:ChanServ
  372. Q::Reserved for services:NickServ
  373. Q::Reserved for services:MemoServ
  374. Q::Reserved for services:OperServ
  375. Q::Reserved for services:HelpServ
  376. Q::Reserved for services:StatServ
  377. Q::Reserved for operators:IRCop
  378. Q::Reserved for operators:*Oper*
  379. Q::Reserved for administrators:Admin*
  380. #
  381. # T: [OPTIONAL]. These allow you to specify different MOTD and RULES files
  382. # based on a users host.  This is made so you can have MOTDs in different
  383. # languages so all users can see the MOTD and understand it.
  384. #
  385. # The fields are as follows:
  386. # T:host:motdfile:rulesfile
  387. #
  388. # T:*.fr:french.motd:french.rules
  389. #
  390. #
  391. # e: [OPTIONAL]. These lines allow you to specify a host which will not 
  392. # be scanned by the proxy scanner when they connect. This is made so you
  393. # can allow some open proxys to connect while still killing others. Make
  394. # sure you use an IP and not a host for this line or it will not work.
  395. # NOTE: These are not the same as E:lines.
  396. #
  397. # The fields are as follows:
  398. # e:IP:*:*
  399. #
  400. # e:123.123.123:*:*
  401. #
  402. #
  403. # Z: [DISCOURAGED]. These block ALL incoming connections from a certain
  404. # IP address mask.  They can stop users who log on and issue the SERVER
  405. # command a couple of times just to annoy irc ops.  They are more
  406. # powerful that K-lines because they can stop users before they've had a
  407. # chance to register.  This works on servers, SO BE VERY CAREFUL WITH
  408. # YOUR Z-LINE MASKS.  Z-lines are a LAST RESORT.  They are much too
  409. # dangerous and powerful to be using them instead of K-lines and akills.
  410. #
  411. # NOTE 1: Z-lines do NOT work on host names!  Only IP addresses.
  412. # NOTE 2: Z-lines are part of /stats k.  
  413. # NOTE 3: The :* at the end is REQUIRED.  Not using it will cause both
  414. # ircd and chkconf to segfault without saying why.
  415. #
  416. # Syntax:
  417. # Z:IP mask:reason for zapping:*
  418. Z:127.0.0.1:Please don't log on from the local machine:*
  419. #
  420. # L: [OPTIONAL]. These lines "Leaf" specified servers. They are only
  421. # useful if you are a non-leaf site yourself. There are two ways you can
  422. # use L: lines. The first will limit one particular site to a particular
  423. # tree depth (including 0, which would mean the server has to connect with
  424. # no servers linked behind it otherwise the connection will fail). The
  425. # second will allow you to be selective about which other servers you wish
  426. # the connecting server to behave as a leaf towards.
  427. #
  428. # The fields are as follows:
  429. # L:disallow connections to this hostmask::server name:depth
  430. # For example, this will force kaja.gi.alaska.edu to connect only as a
  431. # leaf (if it is not a leaf, the link will be dropped):
  432. L:::kaja.gi.alaska.edu
  433. # This line will force cm5.eng.umd.edu to have a depth of only 1 below it
  434. # (that is, it is allowed to have only leaves connected to it):
  435. L:::cm5.eng.umd.edu:1
  436. #
  437. # This line will prohibit anything matching *.edu to be connected behind
  438. # any server matching *.au:
  439. L:*.edu::*.au
  440. #
  441. # H: [OPTIONAL]. These lines define who you permit to act as a "hub" to
  442. # you (that is, who you permit to connect non-leafed servers to you).
  443. #
  444. # the first field may use wildcards, the third field *must* be an exact
  445. # match for a server's name (NOT a server's hostname, if they differ, the
  446. # server's name must be used). If the servername is a wildcard (e.g. *.au)
  447. # that is an acceptable name for the third field. 
  448. #
  449. # The fields are as follows:
  450. # H:servers which are permitted entry::hub server
  451. #
  452. # Example, permit server.my.net to allow any servers behind it to 
  453. # connect: 
  454. H:*::server2.my.net
  455. #
  456. # Example, permit irc-2.mit.edu to allow any MIT servers behind it to
  457. # connect: 
  458. H:*.mit.edu::irc-2.mit.edu
  459. #
  460. # P: [OPTIONAL]. This field allows the server to listen on various ports
  461. # (other than 7000) for connections.
  462. #
  463. # You can now bind internet ports to specific IP interface devices.  To do
  464. # this put the IP address of the interface in the host field.  To bind to
  465. # all interfaces, leave empty or put * in.
  466. #
  467. # P:lines can be limited to specific connections. For example you can make
  468. # a port listen for only server connections. The currently available flags
  469. # are:
  470. #
  471. # S - Server Only
  472. # C - Client(User) Only
  473. # J - JavaChat (for CR Java Client)
  474. # s - Secure SSL
  475. # * - CS flags
  476. #
  477. # The fields are as follows::
  478. # P:IP# or UNIX socket file:*:*:port number
  479. # for example, an internet domain socket on port 6665 for the local
  480. # computer
  481. P:127.0.0.1:*:*:6665
  482. #
  483. # Examples using flags
  484. P:127.0.0.1:S:*:6666
  485. P:127.0.0.1:C:*:7000
  486. #
  487. # V: [OPTIONAL]. These lines are very complex and allow you to deny a 
  488. # server from linking based on what version of Unreal they are running,
  489. # as well as what flags the IRCd was compiled with.
  490. #
  491. # The fields are as follows:
  492. # V:protocol:flags:servermask
  493. # The format for the protocol field is as follows:
  494. # >protocol - denys any protocols higher than that specified
  495. # <protocol - denys any protocols lower than that specified
  496. # =protocol - denys the specified protocol
  497. # !protocol - denys all but the specified protocol
  498. #
  499. # The format for the flags field is as follows:
  500. # flag - server must have the specifed flag
  501. # !flag - server may not have the specified flag
  502. #
  503. # Examples:
  504. # V:<2302:*:*
  505. # V:*:S:hub.*
  506. # V:=2301:!S:*
  507.  
  508.  
  509.  
  510.  
  511.  
  512.